﻿using System;
using System.Collections.Generic;
using Xoohoo.Models;
using Xoohoo.Models.InputModels;

namespace Xoohoo.Repositories
{
    public interface IUserGroupRepository : IDisposable
    {
        UserGroup GetItem(Guid userGroupID);
        UserGroup GetItem(string userGroupName);
        List<UserGroup> GetList(Guid? parentID = null);
        List<UserGroup> GetParentList(Guid userGroupID);
        List<UserGroupBasic> GetParentBasicList(Guid userGroupID);
        bool Save(UserGroupInput userGroupInput);
        bool Remove(Guid userGroupID);
        bool Move(Guid userGroupID, MovingTarget target);
    }
}
